#ifndef __ZSTRING_H_
#define __ZSTRING_H_
#ifndef MULTICAT_EOF
	#define MULTICAT_EOF "!@#$%^&*()"
#endif
#include <stdio.h>
#include <wchar.h>

/*Print Unicode string*/
void print_unicode(FILE * fd, char * str);

/*Get unicode format string's pointer*/
char * get_unicode_from(char * str);

/*Detect a 6bytes-length string is whether a unicode format*/
int is_unicode(char * p);

/*Decode unicode format strings into file*/
int de_unicode(FILE * fd, char * str);

/*Cat some strings to a string*/
/*This function uses stdarg.h. The first
and the last parameter must be a macro
defined by yourself.
The 2nd parameter is a ptr,please speicify it
has been alloced enough memory.
*/
char * multicat(char * end_str,char * str,...);

/*Parse int type to string*/
char * int2str(int n);

/*Convernt a unicode format string to a wide charactor*/
wchar_t str2uni(char * p);

int url_decode(char *str, int len); 

char *url_encode(char const *s, int len, int *new_length);  
#endif
